//
//  SYBaseTBVC.swift
//  SYWeibo
//
//  Created by Saya on 16/4/8.
//  Copyright © 2016年 黄金果. All rights reserved.
//

import UIKit

//由于不仅仅是home需要现实访客见面,其他四个table,也西药像是,所以可以创建一个基类,继承自tableView,将loadview的方法在这边重写
//各自特殊的操作需要子类中做
class SYBaseTBVC: UITableViewController,SYVisitViewDelegate {
    
    //用一个bool值记录用户是否登录,根据viewModel中的userInformation属性判断
    var isLogin:Bool = SYVIewModel.viewModel.isLogin
//    var isLogin:Bool = true
    //loadview方法多用于手写代码,在这个方法中可以通过代码判断需要现实的界面,如果重写了Loadview方法,但是方法里面没有调用super那么storyBoard/XIB就会失效
    //Loadview方法如果返回的view为nil,则系统会自动调用该方法,会产生死循环
    var visitView :SYVisitView?
    
    override func loadView() {
        isLogin ? super.loadView() : setUpVisitView()
    }
    
    private func setUpVisitView () {
        visitView = SYVisitView()
        view = visitView
        
        visitView?.Delegate = self
        self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: "登录", style: .Plain, target: self, action: #selector(SYVisitViewDelegate.userWillLogin))
        self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "注册", style: .Plain, target: self, action: #selector(SYVisitViewDelegate.userWillRegister))
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    func userWillLogin() {
        print("外界调用login")
        let navi = UINavigationController(rootViewController: SYOAuthViewController())
        presentViewController(navi, animated:true, completion: nil)
        
    }
    
    func userWillRegister() {
        print("外界调用register")
    }
    
}
